A memory apparatus typically includes a master device, such as a memory controller, and a plurality of memory devices for storing data. A user of a memory apparatus is generally interested in being able to store as much data as possible in the memory devices as well as being able to transfer the data to and from the memory devices as fast as possible.
Some memory apparatus include memory devices having a single memory bank. A single bank memory device may be used in the apparatus because single bank memory devices generally have faster access times than multi-bank memory devices. Second, if multi-bank memory devices are used instead of single bank memory devices, the actual throughput of data transferred in the apparatus may be reduced. Memory bank conflict during concurrent read transactions to the same memory bank may cause the actual throughput to be less than the theoretical maximum. Third, an apparatus having multi-bank memory devices generally requires a more complex controller to keep track of read and write transactions to the various memory banks. An apparatus with a single bank memory device often has a fixed latency of transferring data.
While users may prefer the benefits of a memory apparatus having a single bank memory device, single bank memory devices having relatively fast access times are generally more expensive than the slower multi-bank memory devices. Accordingly, when a user wants to upgrade or replace the memory devices in the apparatus, the user has to pay for the more expensive single bank memory devices.
Further, when a user replaces or upgrades the memory devices, the user generally wants to run the same software applications that were previously executed using the previous memory devices.
Therefore, it is desirable to provide an apparatus and method having the software compatibility and benefits of a single bank memory device, without the added cost.